using System;
using System.Xml.Serialization;
using System.Collections.Generic;

namespace Aop.Api.Domain
{
    /// <summary>
    /// AlipayInsSceneCouponSendModel Data Structure.
    /// </summary>
    [Serializable]
    public class AlipayInsSceneCouponSendModel : AopObject
    {
        /// <summary>
        /// 渠道账号对应的uid;如果证件类型字段没填则必填
        /// </summary>
        [XmlElement("channel_user_id")]
        public string ChannelUserId { get; set; }

        /// <summary>
        /// 渠道账号来源;1:支付宝账号 2:淘宝账号;如果证件类型字段没填则必填
        /// </summary>
        [XmlElement("channel_user_source")]
        public string ChannelUserSource { get; set; }

        /// <summary>
        /// 发奖因子
        /// </summary>
        [XmlArray("factors")]
        [XmlArrayItem("ins_mkt_factor")]
        public List<InsMktFactor> Factors { get; set; }

        /// <summary>
        /// 标的Id
        /// </summary>
        [XmlElement("mkt_obj_id")]
        public string MktObjId { get; set; }

        /// <summary>
        /// 标的类型;GOODS:淘宝商品,PRODUCT: 产品,ANT_PID:蚂蚁商户PID
        /// </summary>
        [XmlElement("mkt_obj_type")]
        public string MktObjType { get; set; }

        /// <summary>
        /// 商户生成的外部业务号,必须保证唯一，幂等控制
        /// </summary>
        [XmlElement("out_biz_no")]
        public string OutBizNo { get; set; }

        /// <summary>
        /// 营销展台;propertyPaySuccess:蚂蚁物业支付成功页面
        /// </summary>
        [XmlElement("stage_code")]
        public string StageCode { get; set; }
    }
}
